import axios from '@/request/http'
import { commonOutDTO } from '@/api/common.d'
import {
  JsAddInputDTO,
  JsSaveOutputDTO,
  JsDeleteInputDTO,
  JsGetInputDTO,
  JsGetOutputDTO,
  JsQueryResult,
  JsQyjyInputDTO,
  YqyjsQueryResult,
} from './jsgl-dto'

export default class jsglService {
  /**
   * 保存角色
   */
  static saveJs(data: JsAddInputDTO): Promise<commonOutDTO<JsSaveOutputDTO>> {
    return axios.post('/api/jsgl/saveJs', data)
  }
  /**
   * 删除角色
   */
  static deleteJs(data: JsDeleteInputDTO): Promise<commonOutDTO<null>> {
    return axios.post('/api/jsgl/deleteJs', data)
  }
  /**
   * 查询角色
   */
  static getJs(data: JsGetInputDTO): Promise<commonOutDTO<JsGetOutputDTO>> {
    return axios.post('/api/jsgl/getJs', data)
  }
  /**
   * 查询角色列表
   */
  static queryJs(): Promise<commonOutDTO<JsQueryResult[]>> {
    return axios.post('/api/jsgl/queryJs')
  }
  /**
   * 启用/禁用角色
   */
  static qyjyJs(data: JsQyjyInputDTO): Promise<commonOutDTO<null>> {
    return axios.post('/api/jsgl/qyjyJs', data)
  }
  /**
   * 查询当前空间下已启用角色列表
   */
  static queryYqyjs(): Promise<commonOutDTO<YqyjsQueryResult[]>> {
    return axios.post('/api/jsgl/queryYqyjs')
  }
}
